import { fileURLToPath, URL } from 'node:url'

import { defineConfig } from 'vite'
import legacy from '@vitejs/plugin-legacy'
import vue2 from '@vitejs/plugin-vue2'
import compression from 'vite-plugin-compression';

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vue2(),
    compression({
      // 开启压缩
      verbose: true, // 是否在控制台输出压缩结果
      // 压缩规则，可以自定义，默认为 /(.js|.css|.html)$/
      algorithm: 'gzip', // 压缩算法
      threshold: 10240, // 文件大小阈值，小于此值的文件将不会被压缩
      minRatio: 0.8, // 压缩比例
      deleteOriginFile: false, // 是否删除原文件
    }),
  ],
  build:{
    target:'es2020',
    cssTarget:'chrome80',
    terserOptions: {
      compress: {
        drop_console: true, // 删除console语句
        drop_debugger: true, // 删除debugger语句
      },
      mangle: {
        properties: {
        }
      },
    },
  },
  server: {
    port: 80,
    open: true,
    https: false,
    proxy: {
      '/api': {
        target: 'http://localhost:8120',
        changeOrigin: true,
        rewrite: (path) => path.replace(/^\/api/, '')
      }
    }
  },
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url))
    }
  }
})
